蛋白质是一门奇怪外语,Alphafold 蛋白质 AI 是改变科研的导火线。
如果我们把蛋白质看作一种高维度的“外语”,就像是电影《降临》里的外星人语言一样,蛋白质语言模型可能是连接人工智能世界和生物世界的那个桥梁。
这篇文章是我公开学习( learning in public) 最近阅读的资料之一,分享给大家。我想更深入理解蛋白质设计的原理,和蛋白质语言模型如何可能带动生命科学领域尤其是合成生物技术和先进生物制造的发展 (这是一个宏观的命题,不过已经初露端倪),以及在生物技术领域通用大模型和专业化模型的发展趋势。这些问题我的认知还很浅,如果有专业人士欢迎教给我一些事情。除了跟国外和国内的前沿研究者和博士生交流,我也在推特上关注了一些乐于分享的研究者。
今天分享的这篇英文文章来自于 Michael Nielsen,他是一位在推特上活跃的量子物理学家、科学作家、计算机科学家,这篇文章来自于他在 Metascience 2023 Conference 会议上的演讲,记录了他对蛋白质人工智能系统对整个科研范式影响的思考。他没有生命科学背景,但是最近也对蛋白质人工智能和蛋白质语言模型的飞速进步所着迷,尝试理解清楚它是如何运作的,所以这篇文章我认为是一个很好的总结和启发。
蛋白质语言模型和蛋白质人工智能系统可能是人工智能在科学领域,甚至近期未来对社会的整体影响,目前取得的最重要的成就。而科学家们也才刚刚开始深入理解这一点。就算你对生命科学不感兴趣或者没有任何基础知识,我想蛋白质领域的进步也非常值得关注和学习。否则,几家领先的科技巨头,谷歌,百度,微软和 Meta 也不会都吸纳顶尖人才投入在蛋白质人工智能的领域,它会是人工智能世界和生物世界的一个桥梁。
而在国内外,一众顶尖的高校和研究机构目前也已经把生物信息学和计算生物学归类为人工智能领域的重要组成部分。而未来蛋白质设计可能会同时在生命科学的学科,化学,物理学和计算机科学领域被教授。还会有许多现在完全意想不到的新型职业,出现在人工智能和生命科学之间。也许下一代很多学生希望成为的职业是 “蛋白质驯兽师(设计师)”和 “蛋白质农夫” 。
在很近的未来,会有很多先进的新公司,学会最优化和最大化应用人工智能/机器学习,蛋白质设计,基因组工程,合成生物技术,新的生命科学等等领域的交叉知识和工具箱,今天依然很复杂前沿的工具,也会变得越来越通用和高效。所以保持持续学习是最重要的。我也会在以后的文章里继续分享。如果你对 AI + Bio 充满研究的热情,也欢迎通过微信找到我,我的微信是:2871981198 .
最后我想分享这一段话,人工智能的发展速度前所未有,但是我们不要低估人类进步的决心和能力,人类的思想不是静止的,它们在压力之下改进和发展。
原文链接在文末。希望这篇文章对你有启发。Enjoy!
人工智能正在如何深刻影响科研?
How is AI impacting science?
作者:Michael Nielsen
编辑:范阳
写作日期:2023年5月14日
AI 在科学领域的最大成功目前是 AlphaFold 2 系统。这是一个深度学习系统(a deep learning system),它在一个重要的基础科学问题上取得了巨大的进展:如何根据构成蛋白质的氨基酸序列来预测蛋白质的三维结构(how to predict the 3-dimensional structure of a protein from the sequence of amino acids making up that protein)。
这一突破引发了分子生物学中持续进行的深度学习革命(deep learning revolution in molecular biology)。虽然这一成就显然对分子生物学家来说很有兴趣,但我认为对整个科学领域来说,这也具有更广泛的价值,因为 AlphaFold 是人工智能如何影响一个科研领域的发现的具体原型(a concrete prototype for how artificial intelligence may impact discovery)。
在这个简短的调研报告中,我简要讨论了一些问题,包括:
1. 这些系统如何进行验证?
2. 它们能否用于识别人类科学家可以从中借鉴的普遍原则(general principles that human scientists can learn from)?
3. 以及我们应该期待一个好的理论或解释到底能提供什么?
我的这个报告的重点是现有的结果和近期发展,而不是较长期的未来。然而,我希望它可以帮助对未来较长时间的理解提供基础,并了解 AI 系统的益处和风险。
这篇文章是关于 2023 年5月在美国华盛顿特区举行的 Metascience 2023会议上的演讲稿。
在 2020 年,深度学习系统 AlphaFold 2 让生物学家们大为惊讶,因为它被证明能够准确地预测蛋白质的结构,达到近乎原子级的精度(near atomic-precision predictions for protein structure)。也就是说,仅仅通过蛋白质的氨基酸线性序列(linear sequence of amino acids making up a protein),AlphaFold 能够预测蛋白质中原子的位置。这些结果并非一开始就是被精心挑选出来,而是在与其他一百多个建模组进行的对抗性盲竞赛中(an adversarial, blind competition with over a hundred other modeling groups)逐步浮现出来的。在一些情况下,AlphaFold 2 甚至超过了实验得到的准确性(experimental accuracy),导致现有的实验结果被重新评估和改进。
虽然 AlphaFold 令人印象深刻,但它远未成熟完善:它实际上是通往一个新时代的桥梁(a bridge to a new era),引发了许多科学和元科学(metascientific)问题。这些问题包括:我们对好的科学理论或解释期望什么;验证理解的意义(what it means to validate that understanding)是什么;以及我们人类可以从这些系统中学到什么。最重要的是:作为一种系统性的干预,人工智能系统是否以及如何对整个科学进展产生影响?在我的演讲中,我将把 AlphaFold 视为人工智能在整个科学领域中使用的具体原型。因此,即使您之前对蛋白质甚至生命科学没有兴趣,元科学家们与 AlphaFold 及其后续系统进行接触也具有价值。
这次演讲是一次调查性的分享。我不是分子生物学家,所以如果有任何科学事实上的错误,请原谅。尽管如此,学习蛋白质的知识令人愉快且常常具有启发性。让我花几分钟时间向那些像我一样不是生物学家的人提供一些背景知识铺垫。分子生物学就像进入一个巨大且充满奇妙和各种机器的工作坊(wandering into an immense workshop full of wonderful and varied machines)。像 UniProt 这样的大型数据库包含了数亿个蛋白质的氨基酸序列。例如,有肌动蛋白蛋白质(kinesin proteins),它们在细胞内部运输大分子。还有血红蛋白(haemoglobin),它在血液中携带氧气,并帮助推动人体新陈代谢。还有绿色荧光蛋白(fluorescent protein),它在紫外光下发射绿光,并可用于标记和追踪其他生物分子。所有这些种类繁多的分子机器都是通过自然选择的严格筛选而形成和分类的。每个分子机器都可能成为科学家终身学习的研究对象。例如,关于肌动蛋白超家族(kinesin superfamily)已经有数千篇论文,然而我们对它的理解还只是刚刚开始。但尽管这种丰富的生物机器令人惊叹,我们并不事先知道这些机器的功能或其工作原理。我们没有蛋白质分子机器的使用说明书,所以科学家们正在努力弄清楚这一切。
实际上,对于已知的数亿种蛋白质中的绝大多数,我们能够直接确定的只是它们的基本蓝图(the basic blueprint):通过基因组测序,我们可以找到组成蛋白质的氨基酸的线性序列,成本不超过几美分。但是蛋白质是微小的三维结构(tiny 3-dimensional structures),通常只有几纳米大小,因此直接成像蛋白质结构非常困难。对于单个蛋白质,通常需要数月的工作才能实验性地确定其相应的三维结构,通常使用 X射线晶体学(x-ray crystallography)、冷冻电子显微镜(cryo-electron microscopy)或核磁共振( NMR)等技术。
这种差异非常重要。它重要的原因在于理解蛋白质的形状对于回答以下问题至关重要:
抗体蛋白质(antibody protein)可以与哪些抗原(antigens)结合,作为免疫反应的一部分?
蛋白质可以携带什么物质(例如,血红蛋白携带氧气的方式)?
蛋白质如何形成更大的复合物(例如,核糖体)?
了解蛋白质的形状并不能完全告诉我们关于其功能(function)的一切。但它对于理解蛋白质的能力,以及蛋白质是如何发挥作用的至关重要。
理想情况下,我们应该能够仅通过氨基酸序列(amino acid sequence alone)确定蛋白质的形状。化学家和生物学家有理由认为这通常是可能的,并且在 20 世纪 70 年代,科学家开始进行物理模拟(physics simulations),试图确定蛋白质的折叠形状。自那时以来,采用了许多技术( kinetics 动力学方法、热力学方法 thermodynamics、进化模型方法evolutionary等)。很长一段时间里,这些技术的进展非常缓慢。即使对于那些进展,人们仍然要怀疑模型构建者是否会进行选择性挑选,即使是出于最好的意愿。例如,上世纪90年代,约翰·霍普金斯大学声称已经在很大程度上 “解决” 了蛋白质结构预测问题。
为了以公正而严格的方式评估进展,1994 年开始了一项名为“蛋白质结构预测的关键评估”(Critical Assessment of protein Structure Prediction,CASP)的竞赛。CASP 每两年举办一次,要求模型构建者进行蛋白质结构的盲预测(blind predictions of protein structure)。也就是说,他们被要求预测已知氨基酸序列,但生物学家仍在努力实验确定其三维结构的蛋白质,并且预计在竞赛结束后不久将会得知实验结果,以用于评估预测的准确性。对于任何给定的模型,得分(非常粗略地)是根据一些严格的阈值,预测正确的氨基酸位置的百分比。正如你所看到的,从2010 年代开始,获胜者的得分通常在 30 到 50 之间:
也就是说,获胜者(大致上)会将大约一半的氨基酸位置预测得非常准确。然后,在2018 年和2020年,DeepMind推出了AlphaFold和AlphaFold 2:
我将专注于 2020 年举办的 CASP 14 的结果,当时 AlphaFold 2 在最具挑战性的自由建模类别(the free modeling category)中取得了 87 的得分,也就是在一个较为苛刻的阈值范围内,大约预测准确了 87% 的氨基酸位置。在所有类别中,AlphaFold 预测的主链 α-碳原子(alpha-carbon atoms in the backbone )的位置的均方根距离为 0.96埃(0.96 Angstroms)。而第二名的技术准确度约为 AlphaFold 的三分之一,其主链 α-碳原子的均方根距离为 2.8 埃(2.8 Angstroms)。
作为对比,碳原子的范德华直径(van der Waals diameter)大约为 1.4 埃。AlphaFold 的准确度通常与实验准确度相当。CASP 的联合创始人、马里兰大学的约翰·莫尔特(John Moult)教授表示:
“ 我们在这个问题上已经陷入了近50年的困境 —— 蛋白质是如何折叠起来的。看到 DeepMind 为这个问题提供了一个解决方案,我个人在这个问题上已经投入了很长时间,经历了许多起伏,一直怀疑我们是否能够达到这个目标,这是一个非常特殊的历史时刻。”
这是一个非常激动人心的陈述,值得深入探讨 AlphaFold 如何解决蛋白质结构预测问题,以及还有哪些问题有待理解。然而,即使是 AlphaFold 的竞争对手也对其给予了赞扬。哥伦比亚大学的穆罕默德·阿勒库莱希(Mohammed AlQuraishi)教授说道:
“ 这是否构成了静态蛋白质结构预测(static protein structure prediction)问题的解决方案?我认为是的,但也存在一些细枝末节的问题。诚实而深思熟虑的人在这个问题上可能存在分歧,这取决于对 “解决方案” 这个词的定义。科学要解决的问题的大部分已经得到解决;现在剩下的是执行阶段。”
上述也是两年半前的情况了。我认为从今天的视角来看,一个合理的广义观点是:AlphaFold 是一个巨大的飞跃,但在基本问题上仍有很多工作要做,并且现在可以解决许多巨大的新问题。
AlphaFold 的高阶架构需要几个小时来描述清楚。今天我只想强调几个要点:
AlphaFold 是一个深度神经网络(deep neural network),也就是一个分层模型(a hierarchical model),通过训练学习了 9300 万个参数。它以氨基酸序列(amino acid sequence)作为输入,并输出一个三维结构(a 3-dimensional structure),同时还伴随一些错误估计(error estimates),用于量化 AlphaFold 对每个氨基酸位置的置信度。基本的训练数据是蛋白质数据银行(protein data bank,PDB),这是自上世纪 70年代以来人类收集的实验测定的蛋白质结构的库。在训练时,使用了 17 万个蛋白质结构作为数据(尽管由于技术原因,其中一小部分被省略了)。通过使用梯度下降法(gradient descent)调整 AlphaFold 网络的参数,以确保在给定输入的情况下,网络输出正确的结构。
范阳注:Gradient Descent 是一种优化算法,用于调整模型参数以最小化损失函数的方法。可以将其类比为下山找到山谷的过程。想象你被放置在一个山上,你想找到最低的谷底。你开始时可能并不知道谷底的具体位置,但你可以观察周围的地形,并根据当前位置的坡度来判断下一步的移动方向。你会朝着最陡峭的方向下山,每一步都会让你更接近谷底。梯度下降算法的思想类似,它使用损失函数的梯度(类似于地形的坡度)来指导参数的更新,使模型的预测结果逐步接近最优解。通过反复迭代更新参数,最终达到损失函数最小化的目标,就像你找到了山谷的最低点一样。
这是这个网络学习预测结构的一个非常宏观的描述。还有许多其他的重要观念。其中一个聪明而重要的(尽管已有的)观念是从数以亿计的已知蛋白质序列( learn from the hundreds of millions of known sequences for proteins )中学习。这个观念是找到许多与输入蛋白质相似的其他蛋白质,意味着它们很可能在进化上有关联(evolutionarily related)。也许,比如说,它们实际上是同一种蛋白质,只是存在于其他物种中。AlphaFold试图找到许多这样的相似蛋白质,并从中学习。为了直观理解它是如何做到这一点的,假设通过观察许多相似的蛋白质,AlphaFold 发现有一对特定的氨基酸在线性链中相隔很远(a long way apart in the linear chain),但是一个氨基酸的变化似乎与另一个氨基酸的变化相关。如果你看到这种情况,你可能会怀疑这些氨基酸在空间中可能是靠近的,它们一起共同进化以保持蛋白质的形状(co-evolving together to preserve the shape of the protein)。实际上,这种情况经常发生,并且它为 AlphaFold 提供了一种同时从已知结构信息( 在 PDB 中 )和已知进化信息(known evolutionary information)( 在蛋白质序列数据库中 )中学习的方法。用John Jumper( AlphaFold论文的主要作者 )在一次演讲中的话来说,物理学层面告诉 AlphaFold 有关进化历史的理解,而进化历史则告诉 AlphaFold 有关物理学层面的理解。
“ the physics informs AlphaFold's understanding of the evolutionary history, and the evolutionary history informs AlphaFold's understanding of the physics."
泛化和可靠性
Generalization and reliability
你可能会想:AlphaFold 是只是在记忆它的训练数据,还是可以进行泛化(can it generalize)?CASP 提供了一个基本的验证:竞赛中的结构在AlphaFold 预测时尚未在 PDB 数据库中。此外,CASP 在某种程度上是一个 “自然” 的样本(a "natural" sample):结构生物学界更喜欢解决具有生物学重要性的结构。因此,它表明 AlphaFold 在一般生物学家感兴趣的蛋白质上具有一定的泛化能力。
那么,如果我们使用深度学习来研究在自然界中不存在的蛋白质(proteins which don't occur in nature),比如由于突变,或作为蛋白质设计的一部分(part of protein design)产生的蛋白质呢?
目前有大量的学术研究工作正在进行中,坦率地说,这是一个令人兴奋但也有些混乱的领域,涉及到各种各样的研究论文,如果要进行合理的综述,可能会涵盖几十篇甚至上百篇论文。
有些论文声称 AlphaFold 在某种类型的突变中表现不好,而在某种类型的突变中表现良好,还有各种深度学习方法来解决蛋白质设计的问题等等。我的结论是:在未来的几年里,生物学家将忙于发现这些缺点,并改进系统以应对这些不足之处。
OpenFold 是一个开源的近似 AlphaFold 的项目,他们进行了一些有趣的深度学习泛化能力的测试。例如,他们重新训练了 OpenFold,将大多数广泛类别的拓扑结构 ( most broad classes of topology ) 从训练集中移除。为此,他们使用了一种标准的蛋白质拓扑分类方案(a standard classification scheme),即 CATH 蛋白质拓扑分类。他们将训练集中的 95%(!!!)的拓扑结构移除,然后从头开始重新训练 OpenFold。即使移除了大多数拓扑结构,性能与 AlphaFold 1 的性能相似,这在 AlphaFold 2 之前的几年将是当时的最先进的技术水平。
在另一个实验中,他们从蛋白质数据库中选择了更小的子样本重新训练OpenFold。他们使用了小至 1,000 个结构的训练集,这些结构是随机选择的。即使使用如此小的训练集,它们的性能与AlphaFold 1 相当,甚至略优于AlphaFold 1。并且使用仅有 10,000 个结构作为训练数据,它们的性能与完整版本的 OpenFold 相当。
实际上,AlphaFold 的泛化性能问题在一定程度上很重要,因为 DeepMind 发布了 AlphaFold 数据库,其中包含 2.15 亿个蛋白质结构,包括 48 个生物物种的(几乎完整的)蛋白质组,包括人类、小鼠和果蝇。这些结构是通过获取 UniProt 中的基因序列,然后使用 AlphaFold 预测其结构而得到的。你可以将整个过程看作是:
这是一种令人惊讶的泛化能力。如果我们有一个完全可靠的模型,它将使我们对蛋白质结构的理解扩展约三个数量级。值得强调的是,AlphaFold 没有进行任何额外的实验;没有获取额外的数据。然而,通过 “仅仅思考”,它就能够获得大量预测,人们期望这些预测非常准确。我听过几位生物学家表达类似的观点:“ 没有人会单凭 AlphaFold 的预测视其为真实;但它是一个非常有用的起点,可以节省你数月的工作时间。”
随着模型的进一步改进,我预计模型和实验之间的界限会变得模糊(the line between model and experiment to become blurry)。
这听起来可能有些奇怪,但事实上,传统的 “实验确定的结构” 实际上需要极其复杂的理论来将数据转化为结构。如果你相信 AlphaFold(或者其后继的模型)提供了一个更强的理论,你最终可能会相信深度学习系统的预测,而不是相信(今天的)"实验结果"。有早期的迹象表明这种情况已经开始出现。在 CASP 评估中,AlphaFold 在几个使用核磁共振(NMR)光谱确定的结构上表现不佳。一篇 2022 年的论文研究了 “ 904个同时具有AlphaFold 和 NMR 结构的人类蛋白质 ”,并得出结论:“ AlphaFold的预测通常比 NMR 结构更准确 ”。其中一位作者 Mike Williamson 实际上是 NMR在结构生物学中的先驱之一。
在一个更简单的情境中来说明这一点:我们如何解释望远镜的图像取决于我们对光学理论(theory of optics)的理解;如果我们改变或改进了我们的光学理论,我们对所谓的望远镜 “原始数据” 的理解也会发生变化。事实上,在我们对光线被引力弯曲的理解中确实发生了相关的情况。在这种情况下,我们改变了对光线在空间中传播方式的理解,这影响了我们对实验数据的解释,特别是在理解遥远星系的引力透镜效应等现象时。
类似的,"实验"蛋白质结构的确定( "experimental" protein structure determination)也强烈依赖于理论。您可以在 X 射线晶体学中看到这一点,这需要许多困难的步骤:蛋白样品的纯化; 蛋白质的结晶;通过 X 射线衍射获得二维图像; 反演和解决三维结构; 推断反演足够好的标准是什么。这个过程很多理论都涉及其中!事实上,反演过程通常涉及以好的 “猜测” 为出发点,即候选搜索结构(a candidate search structure)。通常人们使用相关的蛋白质,但有时他们找不到好的搜索结构,这可能会阻止解决方案被找到。AlphaFold 已被用于寻找好的搜索结构,以帮助反演对于特别具有挑战性的结构的数据。因此,理论和实验之间已经开始有了模糊的界限。我预计,在未来几年中,确定如何验证人工智能对问题的 “解决方案” ( how to validate AI "solutions" to problems )将成为科学和元科学研究的重要课题。
是否存在一种简单的蛋白质结构原理?人工智能能否帮助我们发现它?
Is a simple set of principles for protein structure possible? Might AI help us discover it?
任何拥有 9300 万个学习参数的模型都是复杂的。它不是传统意义上的 "理论" 或 "解释"(It's not a "theory" or "explanation" in the conventional sense) 。
你可能会想:AlphaFold(或其后续版本)能否用于帮助发现这样的理论,即使只是部分的?也许,蛋白质结构预测的简单原理是可能的吗?那么,AlphaFold 2 究竟在学习什么(what, exactly, is AlphaFold 2 learning)?为了避免产生失望,让我说一句:我们目前还不知道这些问题的答案。但是追问这些问题对于思考人工智能在科学中的作用是有益的。
寻找这样的原则之一是"行为主义人工心理学" ( behaviorist artificial psychology):通过观察系统的行为来推断高级原则 (inferring high-level principles by observing the behavior of the system)。
当然,AlphaFold 的详细预测已经被生物学家广泛应用于发现蛋白质上的新结合位点(discovering new binding sites on proteins)等方面。虽然这非常有用,但这并不等同于推断关于蛋白质结构的新高级原则。然而,在其他重要的深度学习系统中,通过观察行为已经发现了有趣的新的高级原则 (high-level principles) 。
例如,通过观察 AlphaZero 国际象棋系统 ( AlphaZero chess system ) 的行为,推断出违反传统国际象棋大师智慧的行为。这些行为于 2018 年 12 月和 2019 年 1 月公布。最近的一篇论文研究了这些行为,并试图确定人类棋手在系统影响下如何改变(或是否改变)。他们发现 2019 年前十名棋手的变化很少,唯一的例外是当时和现在的世界头号棋手 Magnus Carlsen。他们指出 Carlsen 在 2019 年在多个方面显著改变了他的下棋方式,可能受到了 AlphaZero 的影响。
在这些变化中,Carlsen 更频繁地在开局阶段提前推进他的 h 兵(h pawn)(白方增加了 333%,黑方增加了 175%)。他改变了白方和黑方的开局策略。事实上,他在 2019 年最常用的两种白方开局策略( 皇后弃子和格伦费尔德防御的变化 )是他在 2018 年根本没有使用过的开局。而在黑方,他在 2018 年只有不到 10% 的时间选择西西里防御,而在 2019 年达到了 45%。他们还观察到 Carlsen 愿意进行物质牺牲的意愿增加。所有这些变化都与从 AlphaZero 学习相关。Carlsen 在 2019 年没有在古典棋局中输过一场比赛,并且是唯一一个大师级别的顶尖棋手在 Elo 等级分中显著提高的选手:他的等级分增加了 37 分。相比之下,前十名选手中有6 位实际上失去了积分,其他 3 位选手没有超过 6 分的增长。当然,我们不知道这些变化中有多少是由 Carlsen 从 AlphaZero 中学到的,但这篇论文提出了 Carlsen 很可能从 AlphaZero 中学到了很多东西的合理观点。
这样的行为观察很有趣,但令人沮丧的是:它没有告诉我们为什么会出现这些行为。我们可能知道 AlphaZero 喜欢提前下 h 兵,但我们真正想了解的是为什么。我们能否反过来看看神经网络的内部,了解它们是如何做的?据我所知,这种调查只在 AlphaFold 中被随便研究了一下。但对于更简单的神经网络,人们正在发现有趣的结构。例如,去年,Neel Nanda 和Tom Lieberum 训练了一个单层的 Transformer 神经网络,以增加两个整数的模数113。起初,该网络只是简单地记忆了训练集中的所有例子。它可以很好地添加这些例子,但(毫不奇怪)在其他地方的表现却很糟糕。但是,随着他们对网络进行了更长时间的训练,它过渡到在保留的例子上表现得非常好。不知何故,在没有额外训练数据的情况下,它学会了添加。
Nanda 和 Lieberum 花了几周的时间研究网络内部的情况,以理解发生了什么变化。通过逆向工程网络结构(reverse engineering the network ),他们发现网络以一种非凡的方式学会了相加。大致上说,给定数字 x 和 y ,网络计算了一个波形,即e 2πikx/113,然后进行相位转换为:
e^2πikx/113 ×e^2πiky/113
最后试图找到一个抵消相位转换 z,使得波形
e^(2πik(x+y-z)/113) 具有尽可能平坦的"音调"。
范阳注:以上这一段数学表述就像外星人的语言,别担心,应该没几个人能看懂。。。
这是一种无线电频率工程师或群表示理论家(group representation theorist)的加法方式。这对 Nanda 和 Lieberum 来说是一个相当令人惊讶的发现。正如 Nanda 所说:
“我想强调一下,这个算法完全是通过梯度下降学习得到的!我事先没有预测或理解这个算法,也没有采取任何措施来鼓励模型学习这种模数加法(modular addition)的方式。我只是通过逆向工程权重(reverse engineering the weights)的方式发现了它。”
当我第一次听到这一连串的事件时,我大为不解:为什么网络要改用这种更通用的算法?毕竟,它最初记忆了训练数据,并提供了出色的性能:为什么要改变?答案是,在训练过程中,神经网络为更复杂的模型付出了代价:损失函数的选择使梯度下降更倾向于低权重模型。而波动算法(wave algorithm)实际上具有较低的权重。这是奥卡姆剃刀原理的一种机械实现(mechanical implementation of Occam's razor),它更倾向于一种更简单、在这种情况下更通用的方法。事实上,通过改变损失函数,你可以以许多不同的方式施加奥卡姆剃刀原理。有趣的问题是:将来我们是否能够在像 AlphaFold 这样的系统中做类似的事情,或许发现蛋白质结构的新基本原理(discovering new basic principles of protein structure)呢?
尾声思考
Concluding thought
我希望你喜欢这个对 AlphaFold 的简要介绍以及对人工智能在科学中的应用的思考。
当然,这个领域还有很多值得探讨的内容。但我相信很明确的是,AI 系统可以提出许多基础科学和元科学问题。最重要的是:随着它们在不同类型的认知操作(cognitive operation)上变得更加优秀,并且随着它们在环境中的感知和行动能力变得更强( more able to sense and actuate in the environment),它们将如何影响整个科学领域?AI 系统最终会系统性地改变整个科学实践吗?它们可能会大大加快科学发现的速度吗?如果是这样,这带来了哪些风险和好处?
后记:那么对于更加复杂、数据不足的领域的问题,怎么办?
Afterword: what about messier problems, with less good data to learn from?
在我的演讲结束时,观众们提出了许多有趣的问题。其中一个出色的问题来自 Evan Miyazono。这个问题大致上是:“ 作为 AI 解决问题的目标,蛋白质结构预测受益于拥有大量非常干净的先前数据(very clean prior data),系统可以从中学习。您认为对于那些没有大量干净的先前数据可供学习的问题,AI 会有多大的用处?”
这是一个很好的问题。一年前左右,我本来会说,当你在处理更加复杂的问题,缺乏明确的成功指标时(messier problems with less clear metrics of success),应用 AI 似乎是具有挑战性的。但是随着时间的推移,我改变了观点,因为我更好地理解了基础模型、迁移学习和零样本学习(foundation models, transfer learning, and zero-shot learning)的概念。
范阳注:AI 中的 "transfer learning"(迁移学习),可以把它比喻成你学习一门新的学科。假设你已经很擅长学习数学,现在你要学习物理学。虽然这两门科目内容不一样,但由于你已经掌握了数学的基础知识,你可以将这些知识融会贯通应用到物理学中。这样,你就能更快地理解物理学的概念,因为你已经有了一个扎实的基础,而不用从零基础开始。在 AI 中,迁移学习就是利用已经学到的知识和经验来帮助解决新的问题,尤其是在新问题的数据有限或难以获取时。
另外一个有价值的概念是 "zero-shot learning"(零样本学习)。想象一下,你在动物园学习动物时,已经能够识别和区分狗、猫和鸟类。现在,有人向你展示了一张你从未见过的动物照片,比如袋鼠。尽管你从未见过袋鼠,但你可以利用你已经学到的关于其他动物的知识,通过观察袋鼠的特征和相似之处,猜测出它可能属于哺乳动物类别。你在美术馆看艺术作品也是一样,可以通过以前听过的讲解,猜测出来一幅作品来自哪个国家和谁的风格比较接近。在 AI 中,零样本学习就是利用已有的知识和模型,推断和理解新的事物或类别,即使我们在训练模型时没有提供关于这些新事物的具体样本数据。
让我解释一下为什么我改变了看法,给你两个背景信息。首先,一些非正式的八卦:很多人观察到 ChatGPT 在编程方面比 GitHub Copilot 表现得更好。我不确定真实原因,但我听到过一种常见的猜测,来自一些了解情况的人士,即大量的文本(包括代码)训练显著提高了模型的编码能力。不知何故,文本中的规律性似乎也改善了 ChatGPT 理解代码的能力。
第二个背景信息:AlphaFold 也使用了类似的思想。为了解释这一点,我需要说明一下在演讲正文中没有讨论到的 AlphaFold 的训练过程:实际上,它隐含地包含了一个大型语言模型,将氨基酸序列视为一种可以填充的“文本”。为了理解这一点,回想一下,对于给定的氨基酸序列,AlphaFold 会在现有的基因数据库中查找相似的序列。在训练过程中,就像一个语言模型一样,AlphaFold 会屏蔽(或改变)这些序列中的一些个别氨基酸(masks out (or mutates) some of the individual amino acids in those sequences),并尝试预测缺失的值。通过这样做,网络被迫更多地了解进化信息的结构( forces the network to learn more about the structure of the evolutionary information);然后利用这种迫使性的理解来提高蛋白质结构预测的准确性。这样,AlphaFold 通过从一个相关领域(基因组学)进行迁移学习获益,因为在基因组学领域中有更多的信息可用。
回到科学的更广泛背景,我预计大型多模态基础模型(large multi-modal foundation models)将会:1. 逐渐超越专用系统(outperform special-purpose systems),就像大型语言模型经常胜过更专门的自然语言算法(more specialized natural language algorithms)一样。而且,它们将展现出零样本学习或少样本学习(zero-shot or few-shot learning)的能力。
这些大型多模态模型(large multi-modal models)将不仅仅在文本上进行训练,还会包括图像、动作、代码、遗传数据、地理数据以及各种传感器和执行器数据(not just on text, but also on images and actions and code and genetic data and geographic data and all sorts of sensor and actuator data)。
而且,就像语言模型一样,它们将利用在一个领域中所理解的知识来帮助其在相邻的、通常更复杂的领域中进行工作,尽管该模型对这些领域的信息可能有限。实际上,已经有迹象表明蛋白质语言模型(protein language models )正在朝着这个方向发展。
当然,目前这只是一个说法和一种直觉。除了一些初始的尝试之外,它尚未真正发生,而且我可能是错的!我肯定需要新的思路来使这项工作取得良好的成果。但是,希望这概括了我在过去一年中的直觉变化:我认为在未来几年,AI 模型将会在只有少量先验数据的情况下出人意料地擅长处理复杂的问题(AI models will, in the next few years, be surprisingly good at addressing messy problems with only a little prior data)。
它们将使用多模态基础模型、迁移学习以及零样本和少样本学习的方法来实现这一点。
致谢
Acknowledgments
本次演讲得到了 Astera Institute 的支持。感谢 Alexander Berger、David Chapman、Evan Miyazono、Neel Nanda 和 Pranav Shah 的意见,这些意见有助于改进这次演讲。还要感谢我在 Twitter 上的许多通信者,他们帮助我深入了解了人工智能和分子生物学。
原文链接:
https://michaelnotebook.com/mc2023/